home *** CD-ROM | disk | FTP | other *** search
/ Aminet 20 / Aminet 20 (1997)(GTI - Schatztruhe)[!][Aug 1997].iso / Aminet / comm / www / CountryCodes.lha / countrycodes / extractsuffix.rexx < prev   
OS/2 REXX Batch file  |  1997-06-22  |  2KB  |  50 lines

  1. /* 
  2.   Program: ExtractSuffix.rexx
  3.   Purpose: Extract suffix from an email/www address and feed it to
  4.            the CountryCodes program. Generic example obtaining the
  5.            address as an argument.
  6.   Author : Paul Kolenbrander (paul@serena.iaehv.nl)
  7.   Version: 1.0
  8.   Reqs   : CountryCode 1.0 or higher and RexxMast must be running.
  9. */
  10.  
  11. OPTIONS RESULTS                             /* enable return codes      */
  12.  
  13. PARSE ARG MAILADRES
  14. ports = SHOW('P')                           /* Get CoCo ARexx port      */
  15.    PARSE VAR ports dummy 'COCO' portnr .    /* note trailing period!    */
  16.    ADDRESS VALUE 'COCO' || portnr
  17.  
  18. /* Optionally bring CoCo Window to front and activate it                */
  19. WINDOW FRONT
  20. WINDOW ACTIVATE
  21.  
  22. /* Check if it's a http:// (www) address)                               */
  23. IF (UPPER(LEFT(MAILADRES,7)) == "HTTP://")
  24. THEN DO                                     /* found a WWW address      */
  25.    MAILADRES = RIGHT(MAILADRES, LENGTH(MAILADRES) - 7)
  26.    MAILADRES = LEFT(MAILADRES, POS("/",MAILADRES) - 1)
  27.    LOCATE RIGHT(MAILADRES, LENGTH(MAILADRES) - LASTPOS(".",MAILADRES))
  28. END
  29.  
  30. /* Check if it's a file:// (local address)                              */
  31. IF (UPPER(LEFT(MAILADRES,7)) == "FILE://")
  32. THEN DO                                     /* found a WWW address      */
  33.    LOCATE XXXXX                             /* Local adres. No suffix   */
  34. END
  35.  
  36. /* Check if it's suffix.domain!user or user@domain.suffix format        */
  37. IF (POS("!",MAILADRES) ~=0)
  38. THEN DO                                     /* ! (bangpath) address     */
  39.    MAILADRES = LEFT(MAILADRES,POS("!",MAILADRES) - 1)
  40.    LOCATE RIGHT(MAILADRES, LENGTH(MAILADRES) - LASTPOS(".",MAILADRES))
  41. END
  42. IF (POS("@",MAILADRES) ~=0)
  43. THEN DO                                     /* @ type address           */
  44.    LOCATE RIGHT(MAILADRES, LENGTH(MAILADRES) - LASTPOS(".",MAILADRES))
  45. END
  46. /* Now wait 5 seconds and push the CountryCodes Window back             */
  47. ADDRESS COMMAND 'C:WAIT 5 secs'
  48. WINDOW BACK
  49. EXIT
  50.